package day06;
import java.util.Arrays;
//数组的演示
public class ArrayDemo {
    public static void main(String[] args) {
        //数组的复制:方法2
        int[] a = {10,20,30,40,50};
        //a:源数组
        //6:目标数组的长度
        //---若源数组长度<目标数组长度，则末尾补默认值
        //---若源数组长度>目标数组长度，则末尾的被截掉
        int[] b = Arrays.copyOf(a,6); //灵活性差
        for(int i=0;i<b.length;i++){
            System.out.println(b[i]);
        }

        //数组的扩容
        a = Arrays.copyOf(a,a.length+1); //数组扩容，形成一个新的数组
        for(int i=0;i<a.length;i++){
            System.out.println(a[i]);
        }

        /*
        //方法1:
        int[] a = {10,20,30,40,50};
        int[] b = new int[6]; //0,0,0,0,0,0
        //a:源数组
        //1:源数组的起始下标
        //b:目标数组
        //2:目标数组的起始下标
        //4:要复制的元素个数
        System.arraycopy(a,1,b,2,4); //灵活性好
        for(int i=0;i<b.length;i++){
            System.out.println(b[i]);
        }
        */

        //冒泡排序：前后两个数两两比较大小然后交换位置，升序或降序排列
        int[] arr = {12,5,3,16,9,10};
        int num =0;
        boolean b1 = false;
        for(int i=0;i<arr.length-1;i++){
            for(int j=0;j<arr.length-1-i;j++){
                if(arr[j]>arr[j+1]){ //大于改小于则降序
                    num = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = num;
                    b1 = true;
                }
            }
            if(b1==false){
                break;
            }
        }
        System.out.println(Arrays.toString(arr));
    }
}
